package com.fxb.concurrency.demo1;

/**
 * 演示synchronized关键字，使类变量变成线程之间的共享变量??
 * <p>
 * sychronized 可以使多个线程访问同一个资源具有同步性，
 * 而且它还具有将线程工作内存中的私有变量和公共内存中的变量 同步的功能
 * <p>
 * 对练互斥，内修互见 ，是多线程并发的重要技术点
 * <p>
 * 奈学P6 第13讲 1:46:00
 *
 * @author fangjiaxiaobai
 * @date 2021-03-01 10:06
 * @since 1.0.0
 */
public class SyncSharedFieldDemo2 {

    public static void main(String[] args) throws InterruptedException {
        DemoResource demoResource = new DemoResource();
        Thread thread1 = new Thread(demoResource::run);
        thread1.start();

        Thread.sleep(1000);

        Thread thread2 = new Thread(demoResource::stopRun);
        thread2.start();
        System.out.println(Thread.currentThread().getName() + "--发送停止信号...");

    }

}
